Standard approaches to the digital representation and graphical rendering of geometric shape represent macro-scale information geometrically and micro-scale information through texture maps. These maps are arrays with hardware supported indexing and retrieval mechanisms. Texture maps that have frequently been used to add artificial detail to simple geometric models in order to make them appear more realistic include repetitive color and displacement patterns. Texture maps have also been used to encode other types of information including normal offset information. Texture maps that store normal offset information are called bump maps.
One standard approach to rendering geometric shape is disclosed in U.S. Pat. No. 6,184,893 to Devic et al. entitled “Method and System for Filtering Texture Map Data for Improved Image Quality in a Graphics Computer System”. In particular, the '893 patent discloses a method and system for filtering texture map data. This filtering operation is performed to reduce flickering and sparkling when rendering a relatively small graphics primitive using a texel map of relatively larger area. Another approach to rendering geometric shape, which is described in U.S. Pat. No. 5,949,424 to Cabral et al., entitled “Method, System and Computer Program Product for Bump Mapping in Tangent Space”, uses a tangent space transform module. This module is used to build a tangent space transform matrix having elements comprised of normal, tangent and binormal vector components determined at a surface point on an object surface. A texture memory also stores a surface dependent or surface independent tangent space perturbed normal texture map. U.S. Pat. No. 5,719,599 to Yang, entitled “Method and Apparatus for Efficient Digital Modeling and Texture Mapping”, discloses methods and apparatus for mapping texture from a first raster of pixels to a second raster of pixels that may be a displayable frame buffer or other target map.
An article by M. Soucy et al., entitled “A Texture-Mapping Approach for the Compression of Colored 3-D Triangulations”, The Visual Computer, Springer-Verlag, Vol. 12, pp. 503-514 (1996), addresses the problem of compressing high-resolution colored 3D triangulations into relatively compact geometric descriptions that can be displayed in real time on graphics workstations. The Soucy et al. article proposes a two step approach for the generation of compact texture-mapped models from high-resolution colored models. First, an initial triangulation is decimated using a compression technique that maintains a mapping between the vertices of the initial triangulation and a compressed 3D triangulation. Once the initial triangulation has been compressed, all vertices removed from the initial triangulation are attributed the barycentric coordinates (u, v, w) of their projection onto the larger triangles in the compressed triangulation. Accordingly, each triangle in the compressed triangulation has a color triplet at each vertex, as well as a variable number of removed vertices mapped onto its planar surface. The color information that was mapped onto the compressed triangulation is then used to generate a texture map. The texture map is tessellated so that each triangle in the compressed triangulation has its own texture domain within the texture map. Adjacent triangles on the compressed triangulation are not necessarily mapped to contiguous texture domains within the texture map in order to improve the representations of models of different topology. As a result, adjacent 3D triangles in the compressed triangulation are not necessarily adjacent once they are projected onto the texture map.
The operations described in the Soucy et al. article are limited by the fact that the texture map includes a separate texture domain for each of the large number of triangles within the compressed triangulation. This results in a large texture map and reduces rendering efficiency and speed. Morever, because the texture map is created by mapping the vertices of the initial triangulation to the surfaces of the compressed triangulation, the images of the texture map can become distorted because of the typically poor correspondence between the initial and compressed triangulations.
An article by V. Krishnamurthy et al., entitled “Fitting Smooth Surfaces to Dense Polygon Meshes”, Computer Graphics, Proceedings, pp. 313-324 (1996), discloses operations for converting dense irregular polygonal meshes (e.g., dense triangular mesh) of arbitrary topology into tensor B-spline surface patches with accompanying displacement maps. The first step in the operations consists of interactively painting patch boundaries over a rendering of the polygonal mesh. This interactive placement of patch boundaries is described as being part of the creative process and not amenable to automation. The next step involves gridded resampling of each bounded section of the triangular mesh. The resampling operation lays a grid of springs across the triangular mesh and then iterates between relaxing the grid the subdividing it. This spring grid provides a parameterization for the mesh section, which is initially unparameterized. A tensor product B-spline surface is then fit to the spring grid. A displacement map is also determined for each mesh section. This displacement map represents the error between the tensor product B-spline surface and the spring grid.
The operations described in the Krishnamurthy et al. article are limited by the requirement of interactive painting of patch boundaries over a triangular mesh. Interactive painting involves a manual and time consuming sequence of operations to define a coarse model having quadrangular domains. Moreover, the displacement map typically provides only limited improvement in rendering because it is only computed from the difference between the final surface (B-spline surface) and the spring grid, and not between the final surface and the original triangular mesh.
Thus, notwithstanding these conventional techniques, there is a need for highly automated systems that improve shape rendering by incorporating real geometric and color detail derived directly from physical objects into enhanced texture maps. There is also a need for systems that can automatically generate light weight but highly realistic and accurate models of three-dimensional colored objects from the enhanced texture maps.